package com.wuh.service;

import java.util.Date;
import java.util.List;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.wuh.model.ArticleType;
import com.wuh.model.Collect;
import com.wuh.model.Comment;
import com.wuh.model.Read;
import com.wuh.model.Teacher;
import com.wuh.model.Toefl;
import com.wuh.model.User;

public interface ToeflService {
	/**
	 * 8个类的文章列表
	 * @param toefl
	 * @return
	 */
	List<Toefl> titlelist(Toefl toefl);

	List<Toefl> titlelist2(Toefl toefl);

	List<Toefl> titlelist3(Toefl toefl);

	List<Toefl> titlelist4(Toefl toefl);

	List<Toefl> titlelist5(Toefl toefl);

	List<Toefl> titlelist6(Toefl toefl);

	List<Toefl> titlelist7(Toefl toefl);

	List<Toefl> titlelist8(Toefl toefl);
	/**
	 * 显示某类的所有文章
	 * @param toefl 
	 * @param activity_type
	 * @return
	 */
	PageInfo<Toefl> getClassByat(Toefl toefl, Integer activity_type);
	/**
	 * 显示某篇文章
	 * @param article_id
	 * @return
	 */
	Toefl getArticleByai(Integer article_id);
	/**
	 * 显示某篇文章的评论数量
	 * @param article_id
	 * @return
	 */
	int getCommentsumbyid(Integer article_id);
	/**
	 * 显示某篇文章的评论
	 * @param comment 
	 * @param comment 
	 * @param article_id
	 * @return
	 */
	PageInfo<Toefl> getComent(Comment comment, Integer article_id);
	/**
	 * 插入收藏信息
	 * @param article_id
	 * @param collect_user
	 * @param lm
	 * @param collect
	 */
	void updateCollect(Integer article_id, Integer collect_user,Date lm, Collect collect);
	/**
	 * 查询登录id
	 * @param login_name
	 * @return
	 */
	User getIdByname(String login_name);
	/**
	 * 收藏总数
	 * @param article_id
	 * @return
	 */
	int getCollectsum(Integer article_id);
	/**
	 * 修改收藏数
	 * @param sum
	 * @param article_id
	 */
	void editArticle(int sum, Integer article_id);
	/**
	 * 收藏文章
	 * @param toefl 
	 * @param collect_user
	 * @return
	 */
	PageInfo<Toefl> collectListBycu(Toefl toefl, Integer collect_user);
	/**
	 * 最近发布文章
	 * @param toefl 
	 * @return
	 */
	PageInfo<Toefl> lastArticleList(Toefl toefl);
	/**
	 * 查询教师登录id
	 * @param login_name
	 * @return
	 */
	Teacher getIdBytname(String a);
	/**
	 * 教师发布文章
	 * @param toefl 
	 * @param publish_teacher
	 * @return
	 */
	PageInfo<Toefl> getArticleBytid(Toefl toefl, Integer publish_teacher);
	/**
	 * 删除文章4步
	 * @param article_id
	 */
	void delArticleByid(Integer article_id);

	void delArticleByid1(Integer article_id);

	void delArticleByid2(Integer article_id);

	void delArticleByid3(Integer article_id);
	/**
	 * 发布文章
	 * @param toefl
	 */
	void addAtricle(Toefl toefl);
	/**
	 * 修改文章
	 * @param toefl
	 */
	void editAtricle(Toefl toefl);
	/**
	 * 所有文章
	 * @param toefl 
	 * @return
	 */
	PageInfo<Toefl> schall(Toefl toefl);
	/**
	 * 管理员-文章分类
	 * @param toefl 
	 * @param article_type
	 * @return
	 */
	PageInfo<Toefl> articleClass(Toefl toefl, Integer activity_type);
	/**
	 * 删除文章
	 * @param ids
	 */
	void delArticles(Integer[] ids);
	/**
	 * 禁读文章
	 * @param ids
	 */
	void banArticles(Integer[] ids);
	/**
	 * 解读文章
	 * @param ids
	 */
	void unlashArticles(Integer[] ids);
	/**
	 * 老师列表
	 * @return
	 */
	List<Teacher> schTeachers();
	/**
	 * 课程类别
	 * @return
	 */
	List<ArticleType> schArticleTypes();
	/**
	 * 评论提交
	 * @param article_id
	 * @param desc
	 * @param comment_user
	 * @param publish_teacher
	 * @param lm
	 */
	void updateComment(Integer article_id, String desc, Integer comment_user, Integer publish_teacher, Date lm);
	/**
	 * 插入阅览信息
	 * @param article_id
	 * @param read_user
	 * @param lm
	 * @param read
	 */
	void updateRead(Integer article_id, Integer read_user, Date lm, Read read);
	/**
	 * 阅览总数
	 * @param article_id
	 * @return
	 */
	int getReadsum(Integer article_id);
	/**
	 * 修改阅览数
	 * @param sum
	 * @param article_id
	 */
	void editRead(int sum, Integer article_id);


}
